<?php

namespace App\Http\Controllers\home;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Illuminate\Support\Facades\Auth;

class UserController extends Controller
{

    function set_icon()
    {
        $user = Auth::user();
        return view("user/set_icon",compact("user"));
    }

    // 保存用户头像
    public function save_icon(Request $request)
    {

        // 获取原来头像
        $old_icon = Auth::user()->icon;

        // 上传的图片的路径
        $path = base_path("public\upload\\");

        // 1 是否上传文件
        if ($request->hasFile('icon')) {

            $file = $request->file('icon');  //获取UploadFile实例

            // 2 上传文件是否有效
            if ($file->isValid()) {  //判断文件是否有效

                //3 上传图片方法
                $ext = $file->getClientOriginalExtension(); //扩展名 girl_0.jpg
                $file_name = time() . "." . $ext;    //重命名上传文件
                $res = $file->move($path, $file_name); //移动至指定目录

                // 4 保存图片到数据库
                $user = \Auth::user();
                $user->icon = $file_name;
                $user->save();

            }

            // 删除原图

            if($old_icon){
                // 原头像的路径
                $old_icon = $path.$old_icon;  //"upload/123.jpg"
                unlink($old_icon);
            }

            return redirect("user/set_icon");

        }

    }

}
